﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using DevExpress.XtraEditors;
using QLT_BLL;
using QLT_Public;

namespace GiaoDien
{
    public partial class frm_CapNhatSoLuongTon : DevExpress.XtraEditors.XtraForm
    {
        public frm_CapNhatSoLuongTon()
        {
            InitializeComponent();
        }

        private void cobMaThuoc_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (!Char.IsControl(e.KeyChar) && !Char.IsDigit(e.KeyChar))
                e.Handled = true;
        }

        private void txtSoLuong_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (!Char.IsControl(e.KeyChar) && !Char.IsDigit(e.KeyChar))
                e.Handled = true;
        }
        Thuoc_BLL thuoc_bll = new Thuoc_BLL();
        private void cobTenThuoc_TextChanged(object sender, EventArgs e)
        {
            string sql = "select * from tbl_Thuoc where TenThuoc like N'"+cobTenThuoc.Text.Trim()+"'";
            DataTable dt = new DataTable();
            dt = thuoc_bll.taoBang(sql);
            cobMaThuoc.DataSource = dt;
            cobMaThuoc.DisplayMember = "MaThuoc";
        }

        private void cobMaThuoc_TextChanged(object sender, EventArgs e)
        {
            string sql = "select * from tbl_Thuoc where MaThuoc='" + cobMaThuoc.Text.Trim() + "'";
            DataTable dt = new DataTable();
            dt = thuoc_bll.taoBang(sql);
            cob_SoLuong.DataSource = dt;
            cob_SoLuong.DisplayMember = "SoLuongTon";
            if (dt.Rows.Count > 0)
            {
                errorProvider1.Clear();
            }
            else
            {
                errorProvider1.SetError(cobMaThuoc,"Không Tồn Tại Mã Thuốc Này!");
                cobMaThuoc.Focus();
            }
        }

        private void btnThoat_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void frm_CapNhatSoLuongTon_Load(object sender, EventArgs e)
        {

        }

        private void btnCapNHat_Click(object sender, EventArgs e)
        {
            string sql = "select * from tbl_Thuoc where MaThuoc='" + cobMaThuoc.Text.Trim() + "'";
            DataTable dt = new DataTable();
            dt = thuoc_bll.taoBang(sql);
            try
            {
                if (cobMaThuoc.Text != "" && txtSoLuong.Text != "" && cobTenThuoc.Text!="")
                {
                    if (dt.Rows.Count > 0)
                    {
                        int tong, soMoi = int.Parse(txtSoLuong.Text), soCu = int.Parse(cob_SoLuong.Text);
                        tong = soMoi + soCu;
                        Thuoc_Public t = new Thuoc_Public();
                        t.MaThuoc = int.Parse(cobMaThuoc.Text);
                        t.SoLuongTon = tong;
                        thuoc_bll.update_Thuoc_SoLuongTon(t, t);
                        XtraMessageBox.Show("Cập nhật số lượng thành công!", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        cobMaThuoc.ResetText();
                        cobTenThuoc.ResetText();
                        txtSoLuong.ResetText();
                    }
                    else
                    {
                        XtraMessageBox.Show("Không tồn tài Mã thuốc này!","Thông Báo",MessageBoxButtons.OK,MessageBoxIcon.Error);
                    }
                }
                else
                    XtraMessageBox.Show("Bạn chưa nhập đủ dữ liệu","Thông Báo",MessageBoxButtons.OK,MessageBoxIcon.Information);
            }
            catch (Exception)
            {
                XtraMessageBox.Show("Nhập dữ liệu không hợp lệ,hoặc Tên Thuốc này không tồn tại!", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

        }

        private void txtSoLuong_TextChanged(object sender, EventArgs e)
        {
            if (txtSoLuong.Text == "0")
            {
                errorProvider1.SetError(txtSoLuong, "Số lượng phải lớn hơn 0");
                txtSoLuong.Focus();
            }
            else
                errorProvider1.Clear();
        }

        private void cobMaThuoc_Click(object sender, EventArgs e)
        {
            toolTipController1.ShowHint("Nhập Mã thuốc đã có trong kho.");
        }

        private void cobTenThuoc_Click(object sender, EventArgs e)
        {
            toolTipController1.ShowHint("Nhập chính xác Tên thuốc đã có trong kho.");
        }

        private void txtSoLuong_Click(object sender, EventArgs e)
        {
            toolTipController1.ShowHint("Số lượng phải lớn hơn 0.");
        }


    }
}